<table class="easyui-datagrid" id="importList" 
  		data-options="fit:true,fitColumns:true,rownumbers:true,toolbar:'#importToolbar'">
  	<thead>
        <tr>
        	<th data-options="field:'ck',checkbox:true"></th>
        	<th data-options="field:'xh',align:'center',width:$(this).width() * 0.1">学号</th>
            <th data-options="field:'xm',align:'center',width:$(this).width() * 0.1">姓名</th>
            <th data-options="field:'lqyxsmc',halign:'center',width:$(this).width() * 0.15">系名称</th>
            <th data-options="field:'lqzymc',halign:'center',width:$(this).width() * 0.15">主修专业</th>
            <th data-options="field:'yddh',align:'center',width:$(this).width() * 0.1">移动电话</th>
            <th data-options="field:'dzxx',halign:'center',width:$(this).width() * 0.15">电子信箱</th>
            <th data-options="field:'cwbh',align:'center',width:$(this).width() * 0.1">财务编号</th>
            <th data-options="field:'reason',halign:'center',width:$(this).width() * 0.15">备注</th>
        </tr>
    </thead>
</table>

<div class="easyui-window" id="importMessageWin" title="导入说明" style="width:400px;height:360px"
	data-options="iconCls:'icon-import',modal:true,closed:true,minimizable:false,collapsible:false,maximizable:false">
1.导入的模板：<a href="import/template">导入模板</a><br/>
2.导入校验数据校验结果确认后，方能真正入库。<br/>
3.最少的列：xh(学号),xm(姓名),lqzymc(专业名称),lqyxsmc(系名称),cwbh(财务编码)<br/>
4.最多的列：xh(学号),xm(姓名),lqzymc(录取专业名称),lqzydm(录取专业代码),csrq(出生年月),xb(性别),lxdh(联系电话),yddh(移动电话),dzxx(电子邮箱),lqyxsmc(系名称),lqyxsm(系代码),loginPwd(登陆密码),cwbh(财务编码)
</div>

<div class="easyui-window" id="importChooseFileWin"	 title="选择文件" style="width:360px;height:200px"
	data-options="iconCls:'icon-import',modal:true,closed:true,minimizable:false,collapsible:false,maximizable:false">
	<div id="swfupload-control">
		<div style="height:90px;">
			<ol id="log"><li>请点击按钮，选择上传的文件。</li></ol>
			<div id="importP" class="easyui-progressbar" data-options="value:0" style="width:300px;margin-left:30px;"></div>
		</div>
		<div style="margin-left:140px;"><input type="button" id="button"/></div>
	</div>
</div>

<div id="importToolbar">
<table>
	<tbody><tr>
		<td><a href="javascript:void(0)" class="easyui-linkbutton" onclick="$('#importChooseFileWin').window('open');" data-options="plain:true,iconCls:'icon-remove'">预导入</a></td>
		<td><a href="javascript:void(0)" class="easyui-linkbutton" onclick="confirmImport();" data-options="plain:true,iconCls:'icon-remove'">确认导入</a></td>
		<td><div class="datagrid-btn-separator"></div></td>
		<td><a href="javascript:void(0)" class="easyui-linkbutton" onclick="delRow();" data-options="plain:true,iconCls:'icon-remove'">剔除</a></td>
		<td><div class="datagrid-btn-separator"></div></td>
		<td><a href="javascript:void(0)" class="easyui-linkbutton" onclick="$('#importMessageWin').window('open');" data-options="plain:true,iconCls:'icon-remove'">导入说明</a></td>
		<td><a href="javascript:void(0)" class="easyui-linkbutton" onclick="location.href='import/template'" data-options="plain:true,iconCls:'icon-remove'">模板下载</a></td>
	</tr></tbody>
</table>
</div>

<script type="text/javascript" src="statics/js/swfupload/swfupload.js"></script>
<script type="text/javascript" src="statics/js/jquery.swfupload.js"></script>

<script>
$(function(){
	$('#importP').hide();
	$('#swfupload-control').swfupload({
		upload_url: "import/impfile",
		file_size_limit : "10240",
		file_types : "*.xls",
		file_upload_limit : "0",
		flash_url : "statics/js/swfupload/swfupload.swf",
		button_image_url : 'statics/js/swfupload/XPButtonUploadText_61x22.png',
		button_width : 61,
		button_height : 22,
		button_placeholder : $('#button')[0]
	})
	.bind('fileQueued', function(event, file){
		$(this).swfupload('startUpload');
	})
	.bind('fileQueueError', function(event, file, errorCode, message){
		switch(errorCode) {
		case -130: message = '仅能上传EXCEL文件!';break;
		case -110: message = '文件过大，请不要超过10M!';break;
		}
		$('#log').html('<li>上传出错 - ' + message +'</li>');
	})
	.bind('uploadStart', function(event, file){
		$('#importP').progressbar('setValue',0).show();
	})
	.bind('uploadProgress', function(event, file, bytesLoaded){
		$('#importP').progressbar('setValue', bytesLoaded / file.size * 100);
	})
	.bind('uploadSuccess', function(event, file, serverData){
		$('#log').html('<li>上传成功！ - '+file.name + '</li>')
			.append('<li>数据校验中，请稍后...</li>');
		//提示一些校验信息 TODO
		$.ajax({
			url:'import/validate',
			success:function(result) {
				var info = result.info;

				if(info.error) {
					$.messager.alert('提示','校验失败，请检查导入文件格式是否正确！');
					$('#log').append('数据校验不通过，请重新导入！');
					return;
				} else if(info.isXhExist) {
					$.messager.alert('提示','存在已有的学号，请勿重复导入！');
					$('#log').append('数据校验不通过，请重新导入！');
					return;
				} else if (info.noRecord) {
					$.messager.alert('提示','尚未导入任何记录！');
					$('#log').append('数据校验不通过，请重新导入！');
					return;
				} else if (info.notContainLeastKeys) {
					$.messager.alert('提示','缺少必要的数据列：xh(学号),xm(姓名),lqzymc(专业名称),lqyxsmc(学院名称),cwbh(财务编码)!');
					$('#log').append('数据校验不通过，请重新导入！');
					return;
				}
				
				$('#importList').datagrid('loadData',result.data);
				$('#importChooseFileWin').window('close');
			}
		});
		
	})
	.bind('uploadError', function(event, file, errorCode, message){
		$('#log').html('<li>上传出错 - '+message+'</li>');
	});
});	

function confirmImport() {
	var rows = $('#importList').datagrid('getRows');
	if(rows.length < 1) {$.messager.alert('提示','没有需要导入的学生信息！');return;}
	$.messager.confirm('提示','确认要将列表中的学生全部导入至库中么？',function(r){
		if(!r) return;
		$.ajax({
			url:'import/importData',
			data:{data:JSON.stringify(rows)},
			success:function(result) {
				if(result.errorInfo != 'none') { $.messager.alter('提示',resultInfo.errorInfo); return;}

				$.messager.alert('提示','导入成功！');
			}
		});
	});
}

function delRow() {
	var list = $('#importList').datagrid('getChecked');
	if(list.length == 0) {
		$.messager.alert('提示','您尚未选择任何记录！');return;
	}

	$.messager.confirm('提示','确定要剔除所选学生么？',function(r) {
		if(!r) return;
		$.each(list,function(id,row) {
			$('#importList').datagrid('deleteRow',$('#importList').datagrid('getRowIndex',row));
		});
	});
}
</script>